Skip Headers

Oracle® Database Backup and Recovery Advanced User's Guide 10g Release 2 (10.2) Part Number B14191-02 |
Home | Book List | Contents | Index | Master Index | Feedback

Previous | Next
| View PDF

# Control File and Server Parameter File Autobackups

Having recent backups of your control file and server parameter file is extremely valuable in many recovery situations. To increase the likelihood that you will have such backups, the database supports control file and server paramter file autobackups. RMAN can automatically back up the control file and server parameter file (SPFILE) in situations in which the RMAN repository data for your database has been updated in a way that affects RMAN's ability to restore your database.

With a control file autobackup, RMAN can recover the database even if the current control file, recovery catalog, and server parameter file are inaccessible. Because the path used to store the autobackup follows a well-known format, RMAN can search for and restore the server parameter file from that autobackup.

After you have started the instance with the restored server parameter file, RMAN can restore the control file from the autobackup. After you mount the control file, use the RMAN repository in the mounted control file to restore the datafiles.

A control file autobackup lets you restore the RMAN repository contained in the control file when the control file is lost and you have no recovery catalog. You do not need a recovery catalog or target database control file to restore the control file autobackup. For example, you can issue:

    RESTORE CONTROLFILE FROM AUTOBACKUP;

After you restore and mount the control file, you have the backup information necessary to restore and recover the database. You can connect to the target instance in NOCATALOG mode and recover the database. You can also create a new recovery catalog and register the target database. The RMAN repository records in the control file will be copied to the new recovery catalog.

The automatic backup of the control file occurs independently of any backup of the current control file explicitly requested as part of your backup command. You can turn the autobackup feature on or off by running the following commands:

    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE CONTROLFILE AUTOBACKUP OFF;

Oracle recommends that `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` be set to `ON`.

## How RMAN Performs Control File Autobackups

The first channel allocated during the backup job creates the autobackup and places it into its own backup set; for autobackups after database structural changes, the default disk channel makes the backup. If a server parameter file is used, it is backed up in the same backup set as the control file during a control file autobackup.

After the control file autobackup completes, the database writes a message containing the complete path of the backup piece and the device type to the alert log.

The RMAN behavior when the `BACKUP` command includes datafile `1` depends on the `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` setting. If control file autobackups are ON and the backup includes datafile 1, RMAN writes the control file and SPFILE to a separate autobackup backup set. If control file autobackups are OFF and the backup includes datafile 1, then RMAN includes the current control file and SPFILE in the same backup set as the datafiles.

The control file autobackup filename has a default format of `%F` for all device types, so that RMAN can guess the file location and restore it without a repository. The substitution variable `%F` is defined in the description of the `CONFIGURE` command in Oracle Database Backup and Recovery Basics. You can specify a different format with the `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` `FORMAT` command. All autobackup formats must include the `%F` variable.

The `SET` `CONTROLFILE` `AUTOBACKUP` `FORMAT` command, which you can specify either within a `RUN` block or at the RMAN prompt, overrides the configured autobackup format in the session only. The order of precedence is:

1. `SET` within a `RUN` block

2. `SET` at `RMAN` prompt

3. `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` `FORMAT`

You can configure the autobackup format even when `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` is set to `OFF`, but RMAN does not generate autobackups in this case. For RMAN to make autobackups, you must set `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` to `ON`.

See Also: Oracle Database Backup and Recovery Reference for `BACKUP` syntax Oracle Database Backup and Recovery Referencefor `RESTORE` syntax

## When RMAN Performs Control File Autobackups

By default, control file autobackups are turned off, and no control file autobackups are performed. If `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` is `ON`, then RMAN automatically backs up the control file and the current server parameter file (if used to start up the database) in one of two circumstances: when a successful backup must be recorded in the RMAN repository, and when a structural change to the database affects the contents of the control file which therefore must be backed up.

### Control File Autobackups After Backup Acivities

This means that the control file is backed up in the following situations:

- After every `BACKUP` command issued at the RMAN prompt.

- At the end of a `RUN` block, if the last command in the block was `BACKUP`.

- Whenever a `BACKUP` command within a `RUN` block is followed by a command that is not `BACKUP`.

The first channel allocated during the backup job creates the autobackup and places it into its own backup set. The control file autobackup may be written to disk or tape.

### Control File Autobackups After Database Structural Changes

The control file is also automatically backed up after database structural changes such as adding a new tablespace, altering the state of a tablespace or datafile (for example, bringing it online), adding a new online redo log, renaming a file, adding a new redo thread, and so on. Losing this information would compromise your ability to recover the database.

This backup is performed by the server process itself, rather than one of the RMAN channels. This type of autobackup, unlike autobackups that occur after a successful backup, is always created on disk. You can use `CONFIGURE` `CONTROLFILE` `AUTOBACKUP` `FOR` `DEVICE` `TYPE` `DISK` to set the location for this disk based control file autobackup. Note that a failure of the automatic control file autobackup after a structural change never causes the associated structural change to fail. For example, if you add a datafile, and if the resulting control file autobackup fails, then the datafile addition is still successful.